package com.gzhu.knowledgeAdmin.service;


import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.service.IService;
import com.gzhu.knowledgeAdmin.common.model.Option;
import com.gzhu.knowledgeAdmin.common.vo.DoAssignVo;
import com.gzhu.knowledgeAdmin.common.vo.MenuVO;
import com.gzhu.knowledgeAdmin.entity.Permission;

import java.util.List;

/**
 * <p>
 * 权限 服务类
 * </p>
 *
 * @author testjava
 * @since 2020-01-12
 */
public interface PermissionService extends IService<Permission> {


    //给角色分配权限
    void saveRolePermissionRealtionShip(DoAssignVo doAssignVo);

    //根据用户id获取用户权限值
    List<String> selectPermissionValueByUserId(Integer id);

    //获取全部菜单
    List<Permission> queryAllMenuGuli();

    //递归删除菜单
    void removeChildByIdGuli(String id);

    // 修改菜单
    void updatePermissionById(Permission permission);

    // 菜单下拉列表
    List<Option> listPermissionOptions();

    // 获取当前登录用户的菜单(不包括按钮)
    List<MenuVO> curUserPermissionVoList();
}
